package com.ungs.bo.impl;

import java.util.ArrayList;
import java.util.List;

import com.ungs.bo.ProcesoXOrdenBO;
import com.ungs.entities.ProcesoXOrden;
import com.ungs.utils.Constantes;

public class ProcesoXOrdenBOImpl extends EntidadBOImpl<ProcesoXOrden> implements
		ProcesoXOrdenBO {

	@SuppressWarnings("unchecked")
	@Override
	public List<ProcesoXOrden> getAllProcesoXOrden() {
		List<ProcesoXOrden> procesoXOrdenList = (List<ProcesoXOrden>) getAll(ProcesoXOrden.class);
		List<ProcesoXOrden> procesoXOrdenReturn = new ArrayList<ProcesoXOrden>();

		logger.info("Obteniendo lista de proceso x orden con alta logica");
		for (ProcesoXOrden procesoXOrden : procesoXOrdenList) {
			if (procesoXOrden.getEstadoLogico().equals(Constantes.ALTA)) {
				procesoXOrdenReturn.add(procesoXOrden);
			}
		}

		return procesoXOrdenReturn;
	}

	@Override
	public void eliminarProcesoXOrden(ProcesoXOrden procesoXOrden) {
		logger.info("Baja logica procesoXOrden: " + procesoXOrden.getId());
		procesoXOrden.setEstadoLogico(Constantes.BAJA);
		actualizar(procesoXOrden);

	}

}
